package com.xbongbong.pro.enums.log.enums;

import com.xbongbong.i18n.util.I18nMessageUtil;
import lombok.Getter;

/**
 * @author zcp
 * @version v1.0
 * @date 2019/6/27 22:11
 * @since v1.0
 */
@Getter
public enum DetailLogEnum {
    /**
     * 字段英文名
     */
    ATTR("attr", "enum.detailLog.name.attr"),
    /**
     * 更改字段 的字段名称
     */
    NAME("name", "enum.detailLog.name.name"),
    /**
     * 更改前 的值
     */
    UPDATA_BEFORE("updataBefore", "enum.detailLog.name.updata_before"),
    /**
     * 更改后 的值
     */
    UPDATA_AFTER("updataAfter", "enum.detailLog.name.updata_after"),

    /**
     * 内容、备注
     */
    CONTENT("content", "enum.detailLog.name.content"),

    /**
     * 编号
     */
    NO("no", "enum.detailLog.name.no"),
    /**
     * 规格
     */
    SPECIFICATION("specification", "enum.detailLog.name.specification"),
    /**
     * 数量
     */
    VALUE("value", "enum.detailLog.name.value"),
    /**
     * 仓库
     */
    WAREHOUSE("warehouse", "enum.detailLog.name.warehouse"),
    /**
     * 调入仓库
     */
    INTO_WAREHOUSE("intoWarehouse", "enum.detailLog.name.into_warehouse"),
    /**
     * 调出仓库
     */
    OUT_WAREHOUSE("outWarehouse", "enum.detailLog.name.out_warehouse"),
    /**
     * 来源(工作流或者老审批的模板名称)
     */
    FROM_WORKFLOW_OR_APPROVAL("fromWorkflowOrApproval","enum.detailLog.name.from_workflow_or_approval"),
    /**
     * 触发表单
     */
    TRIGGER_FORM("triggerForm","enum.detailLog.name.trigger_form"),
    /**
     * 流程版本
     */
    WORKFLOW_VERSION("workflowVersion","enum.detailLog.name.workflow_version"),

    /**
     * 内容（文本）
     */
    CONTENT_TEXT("contentText","enum.detailLog.name.content_text"),

    /**
     * 图片（数量）
     */
    PICTURE_COUNT("pictureCount","enum.detailLog.name.picture_count"),

    /**
     * 附件（数量）
     */
    ATTACHMENT_COUNT("attachmentCount","enum.detailLog.name.attachment_count"),

    ;

    /**
     * 枚举描述 --英文名称
     */
    private final String alias;
    /**
     * 枚举信息--中文名称
     */
    private final String name;

    DetailLogEnum(String alias, String name) {
        this.alias = alias;
        this.name = name;
    }

    public String getName() {
        return I18nMessageUtil.getMessage(name);
    }

}
